//
// Created by Castle-Moriarty on 2025/11/8.
//

#include <iostream>
using namespace std;

template <typename T> T maximun(T a,T b);

int main() {
    int a{12};
    int b{23};

    double c{3.14159};
    double d{4.56};

    string e{"hello"};
    string f{"world"};

    cout << "max(int): " <<  maximun(a,b) << endl;
    cout << "max(double):" << maximun(c,d) << endl;
    cout << "max(string):" << maximun(e,f) << endl;

    maximun<double>(a,b);
    maximun<double>(a,c);
    //maximun<double>(a,e);

    return 0;
}

template <typename T> T maximun(T a,T b) {
    return (a > b) ? a : b;
}